﻿using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Linq;
using Distrackting.DataLayer;
using Distrackting.BusinessLayer;

namespace Distrackting.PresentationLayer
{
    /// <summary>
    /// Web Service que permite exportar um ficheiro em formato .gpx para uma directoria escolhida, através de um código de um percurso
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class WebService_Exportador : System.Web.Services.WebService
    {
        /*
        [WebMethod]
        public String exportarFicheiroGPS(String cod_percurso, String filepath)
        {

            Guid cod_perc = new Guid(cod_percurso);
            Parser.Exportador.exportarFicheiroGPS(cod_perc, filepath);
            Percurso p = GerirPercursos.getPercurso(cod_perc);
            String s = "Ficheiro \"" + p.nome + ".gpx\" " + "guardado em \"" + filepath+"\"";
            return s;
        }
        */
        [WebMethod]
        public String exportarFicheiroGPS(String nome_percurso, String filepath)
        {
            bool found = false;
            Guid cod_perc = new Guid();

            foreach (Percurso p in GerirPercursos.getListaPercursos().ToList<Percurso>())
            {
                if (p.nome == nome_percurso)
                {
                    cod_perc = p.cod_percurso;
                    found = true;
                }
            }

            if (found)
            {
                Parser.Exportador.exportarFicheiroGPS(cod_perc, filepath);
                Percurso p = GerirPercursos.getPercurso(cod_perc);
                String s = "Ficheiro \"" + p.nome + ".gpx\" " + "guardado em \"" + filepath + "\"";
                return s;
            }
            else
            {
                return "Não especificou um nome de percurso válido!";
            }
        }

    }
}
